let house_Id = 0
let house_Index = 0
Page({
  data: {
    dialogVisible: false,
    houseList: []
  },
  // 测试token过期，接口报错
  /* 
      注意: onShow() 页面显示一次，就会触发一次
            onLoad() 只会调用一次 
  */
  onShow() {
    this.getHouseList()
  },
  // 获取房屋列表数据
  async getHouseList() {
    // 请求接口数据
    const { code, data: houseList } = await wx.http.get('/room')
    // 检测接口返回的结果
    if (code !== 10000) return wx.utils.toast()

    // console.log(houseList, '请求回来的房屋列表的数据');
    // // 修改data数据，渲染页面
    this.setData({
      houseList
    })
  },
  // 点击侧滑组件中的删除按钮
  clickDeleteBtn(ev) {
    console.log(ev.mark.id, '点击了侧滑组件中的删除按钮')
    house_Id = ev.mark.id
    house_Index = ev.mark.index
    const { position, instance } = ev.detail

    if (position === 'right') {
      // 显示 Dialog 对话框
      this.setData({
        dialogVisible: true,
      })

      // 关闭 swiper-cell 滑块组件，移回到的隐藏的位置
      instance.close()
    }
  },
  // 确认框关闭
  async dialogClose(ev) {
    // console.log('确认框关闭了')
    console.log(ev.detail)
    if (ev.detail === 'confirm') {
      // 1. 请求删除的接口
      const { code } = await wx.http.delete(`/room/${house_Id}`)
      // 2. 检测接口返回的结果
      if (code !== 10000) return wx.http.toast()
      // // 3. 刷新列表
      // this.getHouseList()
      // 通过数组的索引删除元素，然后再刷新列表，节省请求接口的流量
      this.data.houseList.splice(house_Index, 1)
      this.setData({
        houseList: this.data.houseList
      })
    }
  },

  goDetail(ev) {
    console.log(ev.mark.id, '点击房屋列表项通过蒙版传递的具体项的id');
    // 点击房屋项，跳转到对应的详情页，并把id传过去，
    // 请求具体的详情页的数据，渲染详情页模板
    wx.navigateTo({
      url: `/house_pkg/pages/detail/index?id=${ev.mark.id}`,
    })
  },

  addHouse() {
    wx.navigateTo({
      url: '/house_pkg/pages/locate/index',
    })
  },
})
